.router-progress-bar {
    width: 100vw;
    height: 4px;
    overflow: hidden;
    background: fade(#ddd, 40%);
    position: fixed;
    z-index: @zindex-base + 20;
    &::after {
        content: ' ';
        height: 100%;
        width: 33.3vw;
        animation: gradcolours 5s steps(1) infinite, loadthird 1s infinite linear;
        display: block;
        transform-origin: top left;
    }
}

.grad(@hex) {
    background:
        linear-gradient(
            90deg,
            fade(@hex, 0) 0%,
            @hex 30%,
            @hex 50%,
            @hex 70%,
            fade(@hex, 0) 100%
        );
}

@keyframes loadthird {
      0% { transform: translateX(-33.3vw); }
    100% { transform: translateX(100vw); }
}

@keyframes gradcolours {
     0% { .grad(#e88098); }
    20% { .grad(#84bebe); }
    40% { .grad(#e98724); }
    60% { .grad(#afc94e); }
    80% { .grad(#6297a4); }
}
